<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>通过className更改元素样式</title>
    <style>
        div {
            width: 100px;
            height: 100px;
            background-color: red;
            text-align: center;
            line-height: 100px;
        }
        
        .change {
            background-color: skyblue;
            color: #fff;
            font-size: 18px;
            margin-top: 100px;
        }
    </style>
</head>

<body>
    <div class="old">文本</div>
    <script>
        // 1.使用 element.style 获得修改元素样式
        // 如果样式多了就会很沉臃，代码不美观  适合样式较少，功能简单的情况使用
        var test = document.querySelector('div');
        test.onclick = function() {
                // this.style.backgroundColor = 'purole';
                // this.style.color = '#fff';
                // this.style.fontSize = '18px';
                // this.style.marginTop = '100px';

                // 通过添加新的类来改变当前元素
                this.className = 'change';

                // 如果想要保留原先类名 可以这样做 以多类名选择器的形式
                // this.className = 'old change';
                this.className += 'change'; // 效果一样的

            }
            // *1.如果样式修改较多，可以采用操作类名的方式更改元素属性
            // 2.class因为是个保留字，因此使用className来操作元素类名属性
            // 3.className 会直接更改元素类名，会覆盖原先类名
    </script>
</body>

</html>